package com.wx;

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.jms.core.JmsMessagingTemplate;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;

import javax.annotation.Resource;
import java.util.HashMap;
import java.util.Map;

@RestController
public class QueueController {

	@Resource
	private JmsMessagingTemplate jmsMessagingTemplate;

	/**
	 * Resource 和autowired什么区别
	 * 总结：大白话解释，@Autowired自动注解，举个例子吧，一个类，俩个实现类，
	 * Autowired就不知道注入哪一个实现类，而Resource有name属性，可以区分。
	 * @param text
	 */

	/**
	 * 内嵌和外部区别就在于配置文件是否又这句话
	 * todo spring.activemq.broker-url=tcp://localhost:61616
	 * @param text
	 */

	@RequestMapping("/send")
	public void send(String text){
		jmsMessagingTemplate.convertAndSend("SpringBoot-wx-in", text);
	}


	/**
	 * todo http://localhost:8088/sendMap
	 * result: 接收到map{mobile=18796261470, content=welcome to world}
	 */
	@RequestMapping("/sendMap")
	public void sendMap(){
		Map map=new HashMap<>();
		map.put("mobile","18796261470");
		map.put("content","welcome to world");
		jmsMessagingTemplate.convertAndSend("map",map);
	}

}

